The present invention relates to a packet communication processing method and, more particularly, relates to a packet communication processing method which is simple in data link layer processing and which is little in processing delay as well as in end-to-end delay.
As a conventional connection type data link layer processing system, there has been used an LAPB procedure as described in CCITT (the International Telegraph and Telephone Consultative Committee) RED BOOK Recommendations X. 25. The LAPB procedure is a subset of the world-widely used HDLC procedure. A conventional data link layer protocol such as the LAPB procedure is a protocol which has been decided, in times of a high circuit-error probability, so as to perform communication securely between adjacent apparatuses through error re-sending or the like for the purpose of performing high-reliable data communication even under the condition of such a high circuit-error probability. Being complex in control to be conducted, the protocol is, in most cases, processed by means of software for the double purpose of updating the details of the protocol and absorbing differences between options employed. The conventional apparatus, in which processing is made by means of software, requires a delay time of several to tens of msec. for performing processing of one I (information) frame. In the case where communication is made through a communication network constructed by such conventional apparatuses, the delay time required for processing in a communication apparatus more increases when the processing is performed through several stages of relay circuits. Further, in a communication apparatus which relays a large number of circuits or high-speed circuits, a high processor performance is required for improvement of throughput. There has been therefore a proposal that a simple network protocol not according to X. 25 is used and error re-sending is performed between end-to-end (for example, as described in Technical Report IN88-56 of the Institute of Electronics Information and Communications of Japan), on the background of development of a high circuit speed and a low error probability.
The known LAPB procedure relating to the present invention will be described hereunder with reference to FIGS. 1, 2, 3 and 4. The drawings are sequence diagrams in the case where both an A-station 7 and a B-station 8 obey the LAPB procedure.
FIG. 1 is a sequence diagram for explaining the I frame N(S) check, the I frame re-sending and the timer supervision. In FIG. 1, the initial value of a reception status variable V(R) 9 in the A-station 7 is zero. The B-station 8 sends to the A-station 7 an I frame I(0,0) 401 which is a frame having a sending sequence number N(S)=0 and a receiving sequence number N(R)=0. Although description in this specification shows the case where all the sequence numbers and status variables are to be subjected to addition by modulo-8, the technique may be similarly applied to the case of modulo-128. Upon reception of the I frame I(0,0) 401, the A-station 7 checks the sending sequence number N(S)=0 of the received frame, recognizes that the received I frame I(0,0) is a correct one by the fact that the sending sequence number N(S)=0 of the received frame is equal to the reception status variable V(R)=0 in the A-station 7, and then updates the reception status variable V(R)=0 by one into V(R)=1. Then, the B-station 8 sends to the A-station 7 another I frame I(1,0) 402 which is a frame having a sending sequence number N(S)=1 and a receiving sequence number N(R)=0. Upon reception of the I frame I(1,0) 402, the A-station 7 checks the sending sequence number N(S)=1, recognizes that the received I frame I(1,0) is a correct one by the fact that the sending sequence number N(S)=1 of the received frame is equal to the reception status variable V(R)=1 in the A-station 7, and then updates the reception status variable V(R)=1 by one into V(R)=2. Assume that, although the B-station 8 similarly sends a further I frame I(2,0) 403, the I frame is lost before it reaches the A-station 7. Then, the B-station 8 sends a still further I frame I(3,0) 404. Upon reception of the I frame I(3,0) 404, the A-station recognizes the missing of the I frame I(2,0) 403 based on the fact that the sending sequence number N(S)=3 in the received I frame I(3,0) 404 is not equal to the reception status variable V(R)=2. The A-station 7 puts the reception status variable V(R)=2 of the A-station 7 into the receiving sequence number N(R) of a frame of REJ(2) 405 and sends the REJ(2) 405 to the B-station 8. The frame of REJ(2) 405 is a frame for requesting the re-sending of frames of I having the sending sequence number N(S)=2 et seq. Thereafter, the B-station 8 sends the I frames of from I(2,0) 406 to I(7,0) 411. The A-station 7 updates the reception status variable V(R) 9 one by one whenever one I frame is received, so that the reception status variable V(R) becomes zero after reception of the I frame I(7,0) 411. Assuming that the sending window size in the B-station 8 is six, the B-station 8 stops sending regardless of existence of any frame to be sent after the sending of the I frame I(7,0) 411 and waits for updating of the sending window by the receiving sequence number N(R) in the frame received from the A-station 7. The LAPB procedure has a rule that a timer is started whenever one I frame is sent. According to this rule, the B-station 8 starts the timer also after the sending of the frame of I(7,0). The B-station 8 stops the timer thereafter when a new frame is received from the A-station 7. However, the B-station 8 sends to the A-station 7 an RR frame 412 having a P bit set to "1" when the timer is over before the B-station receives the new frame from the A-station 7. Upon reception of the RR frame 412, the A-station 7 puts the status variable V(R)=0 into the receiving sequence number N(R) of an RR frame 413, sets the F bit of the RR frame 413 to "1" and sends the RR frame 413 to the B-station 8. The B-station 8 can update the sending window in response to the reception of the RR frame 413 and, further, can send frames of I(0,0) 414 et seq.
FIG. 2 is a sequence diagram for explaining the usage of F/P bit in the conventional apparatus. After the A-station sends a frame 801 having the P bit=1, the A-station 7 changes the inner status P-Sent to "Yes" for expressing the fact that the A-station 7 is ready for receiving a frame having the F bit=1 after the sending of the frame having the P bit=1 and stores the sending status variable V(S) of the A-station in the inner variable J serving as a sending status variable when the P bit is sent. The A-station 7 does not send the frame having the P bit=1 again while the inner status P-Sent shows "Yes". The B-station 8 sends a frame 802 having the F bit=1 in response to the reception of the frame 801 having the P bit=1. Upon reception of the frame 802 having the F bit=1, the A-station 7 resets the inner status P-Sent to "No". Under the conditions that the receiving sequence number N(R) is not less than the oldest unconfirmed sending status variable L in the A-station 7, not larger than the sending status variable V(S) and the less than the inner status variable J and the B-station 8 is not busy, the A-station 7 starts sending of the I frame having the sending sequence number N(S) equal to the receiving sequence number N(R), et seq. The oldest unconfirmed sending status variable L means the sending sequence number N(S) of the oldest one of frames which had been sent but the reception thereof by the other station had not been confirmed yet.
FIG. 3 is a diagram for explaining the operation in a disconnected phase. Upon reception of a frame having the P bit=1 other than SABM (set asynchronous balanced mode) frames in the disconnecting phase, the A-station 7 sends a DM (disconnected mode) frame to the B-station 8 to notify the B-station of the fact that the A-station is in a disconnected phase.
FIG. 4 is a diagram for explaining the procedure of processing when a busy state occurs The busy state occurs in the case where the communication apparatus for processing the data link layer cannot temporarily continue reception of I frames by inner limitation such as reception buffer limitation. In the A-station 7, the busy state occurs after the reception of the frames of I(0,0) 1401 and I(1,0) 1402. Upon occurrence of such a busy state in the A-station, the A-station 7 sends an RNR frame 1403. Upon reception of the RNR frame 1403, the B-station immediately stops the sending of I frames. When the busy state in the A-station 7 is removed, the A-station 7 sends an RR frame 1404 to the B-station 8 to notify the B-station of the fact that the busy state is removed. Upon reception of the RR frame 1404, the B-station re-starts the sending of I frame (1405 and 1406).
As described above, the conventional apparatus is configured so that when one station performs a processing according to a certain procedure, the other station performing communication with the one station also performs the same processing as the one station.